﻿/***************************************************************************************************
 * Copyright 2024-2025 x-tools-author(x-tools@outlook.com). All rights reserved.
 *
 * The file is encoded using "utf8 with bom", it is a part of wxTools project.
 *
 * wxTools is licensed according to the terms in the file LICENCE(GPL V3) in the root of the source
 * code directory.
 **************************************************************************************************/
#pragma once

#include <wx/wx.h>

#include "Common/wxTools.h"

class LineEdit;
class PageIOInput : public wxStaticBoxSizer
{
public:
    struct Parameters
    {
        const std::string inputText{"inputText"};
    };

public:
    PageIOInput(wxWindow *parent);

    void Load(const wxtJson &parameters);
    wxtJson DoSave() const;

    void SetInputText(const wxString &text);
    wxString GetInputText() const;
    void SetTextFormat(TextFormat format);
    wxString GetLoadedText() const;

private:
    LineEdit *m_lineEdit;
    wxString m_loadedText;
};
